interface User {
    id: string,
    name: string,
    userId: string,
    avatar: string,
    userInfo: UserInfo,
    plant: Array<Plant>,
}

interface UserInfo {
    signInTimes: number, // 签到次数
    todayIsSignIn: boolean, // 今天是否签到
    sun: number, // 当前未收获阳光
    maxSun: number, // 最大收集阳光(超过后不再生产阳光)
    sunTotal: number, // 阳光池
    money: number, // 金钱
    level: number, // 等级
    exp: number, // 当前经验
    allExp: number, // 总经验
    sunDropTime: number, // 阳光生产时间 (秒)
    sunDropCount: number, // 阳光生产量 (次)
    sunNextDropTime: string, // 下次阳光生产时间 默认为当前时间(即立刻可以收获)
    maxPlants: number, // 最大种植数量
}

interface Plant {
    name: string, // 名称
    atk: number, // 攻击力
    hp: number, // 生命值
    price: number, // 价格 (阳光)
    plantType: string, // 植物类型

    sunDropCount?: number, // 阳光生产量

    atkRange?: number, // 攻击范围 (格)
    atkInterval?: number, // 攻击间隔 (秒)
    bulletPenetrate?: number, // 子弹穿透 (次)
    bulletSpeed?: number, // 子弹速度 (ms/格)

    ashAtk?: number, // 灰烬攻击力
    ashType?: string, // 灰烬类型
    boomRange?: number, // 爆炸范围 (格)
    effect?: string, // 生效方式

    isLimited?: boolean, // 是否为限定植物
    skill?: Array<any>, // 技能
}

// 导出类型
export {
    UserInfo,
    Plant,
    User,
}